package com.site.wisdom_construction.dao.statisticsModule;

import com.site.wisdom_construction.statisticsResult.QualityByTypeName;
import com.site.wisdom_construction.statisticsResult.SafetyByTypeName;

import java.util.List;
import java.util.Map;

/**
 * @Author daiyifei
 * @Date 2022/2/12
 * @Description
 */
public interface StatisticsSafetyDao {
    /** 统计安全隐患总数 */
    Integer countSafetyAll(Map map);

    /** 统计安全隐患待整改隐患数 */
    Integer countSafetyAllByStatusDZ(Map map);

    /** 统计安全隐患整改待验隐患数 */
    Integer countSafetyAllByStatusDY(Map map);

    /** 统计安全隐患已整改患数 */
    Integer countSafetyAllByStatusYZ(Map map);

    /** 统计安全隐患超期未整改患数 */
    Integer countSafetyAllByStatusCQ(Map map);

    /** 根据安全隐患类型分类统计数据 */
    List<SafetyByTypeName> countBySafetyTypeName(Map map);

    /** 根据劳务队伍分类统计数据 */
    List<SafetyByTypeName> countBySubcontractorsName(Map map);

    /** 根据巡检点分类统计数据 */
    List<SafetyByTypeName> countBySafetyInspectionName(Map map);

    /** 根据班组分类统计数据 */
    List<SafetyByTypeName> countByTeamName(Map map);

    /** 根据负责人分类统计数据 */
    List<SafetyByTypeName> countByResponsiblePerson(Map map);

    /** 统计安全隐患已整改患数 */
    Integer countAll(Map map);

    /** 根据时间统计数据 */
    List<QualityByTypeName> countByDiscoverTime(Map map);
}
